package net.chenlin.dp.modules.business.dao;

import net.chenlin.dp.common.entity.Page;
import net.chenlin.dp.common.entity.Query;
import net.chenlin.dp.modules.business.entity.dto.DeviceDto;
import net.chenlin.dp.modules.business.entity.dto.TestDto;
import net.chenlin.dp.modules.business.entity.po.DevicePo;
import net.chenlin.dp.modules.business.entity.po.TestPo;
import net.chenlin.dp.modules.business.entity.vo.testManage.AppTestListVo;
import net.chenlin.dp.modules.business.entity.vo.testManage.TestManageVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

@Mapper
public interface TestManageMapper {

    List<TestManageVo> getUnderwayTestList(Page<TestManageVo> page, Query query);

    void stopTest(Long id);

    int saveTest(TestPo po);

    int saveDevice(List<DevicePo> list);

    List<AppTestListVo> appTestList(@Param("page") Page<AppTestListVo> page, @Param("query") Query query);

    int getTestByNo(String testNo);

    List<String> getDeviceNoList(String testNo);

    List<String> getTestList();

    List<String> getDeviceList(String no);

    List<String> getPassList(String no);

    void updateTest(TestDto dto);

    void deleteDevice(String testNo);

    TestDto getTestInfo(String testNo);

    List<DeviceDto> getDeviceInfo(String testNo);

    String getEleNo(String testNo, String deviceNo, Integer passNo);

    void deleteTest(String testNo);

    int getTestByDeviceNo(String deviceNo);
}
